package data

import com.squareup.moshi.Moshi
import com.squareup.moshi.kotlin.reflect.KotlinJsonAdapterFactory
import kotlin.test.Test

class UserJsonTest {

    /**
     * 对象与json之间的序列化
     */
    @Test
    fun `test user`() {
        /*创建moshi*/
        val moshi = Moshi.Builder()
            .addLast(KotlinJsonAdapterFactory())//使用kotlin反射处理，要加上这个
            .build()

        /*创建对象*/
        val user = User("喻志强", 18)
        /*声明adapter，指定要处理的类型*/
        val jsonAdapter = moshi.adapter(User::class.java)
        /*序列化*/
        val toJson = jsonAdapter.toJson(user)
        println("toJson = ${toJson}")
        /*反序列化*/
        val fromJson = jsonAdapter.fromJson(toJson)
        println("fromJson = ${fromJson}")

    }

}